#ifndef MAP_H_
#define MAP_H_

#include "Head.h"
#include "Util.h"
#include <SFML/Graphics.hpp>
#include <list>
using namespace sf;
using namespace std;

class Map {
private:
	Image barriers;
	list<Head> heads;
	Color checkShapeBarrierCollision(const Shape& shape) const;
public:
	const Color WALL_COLOR;
	const Color FREE_COLOR;
	Map(int headCount, int maximumX, int maximumY, int borderSize);
	void checkForCollisions();
	void update(float deltaTime);
	void render(RenderWindow& renderWindow);
	void drawTail(Head& head);
	void reset();
};

#endif /* MAP_H_ */
